//
// Created by root on 24-7-15.
//

#ifndef MAKECODEDFINE_H
#define MAKECODEDFINE_H
#define SCAN_CODE_A         0x1E  // 'a' 和 'A'（大写锁定取决于键盘状态）
#define SCAN_CODE_B         0x30  // 'b'
#define SCAN_CODE_C         0x2E  // 'c'
#define SCAN_CODE_D         0x20  // 'd'
#define SCAN_CODE_E         0x12  // 'e'
#define SCAN_CODE_F         0x21  // 'f'
#define SCAN_CODE_G         0x22  // 'g'
#define SCAN_CODE_H         0x23  // 'h'
#define SCAN_CODE_I         0x17  // 'i'
#define SCAN_CODE_J         0x24  // 'j'
#define SCAN_CODE_K         0x25  // 'k'
#define SCAN_CODE_L         0x26  // 'l'
#define SCAN_CODE_M         0x32  // 'm'
#define SCAN_CODE_N         0x31  // 'n'
#define SCAN_CODE_O         0x18  // 'o'
#define SCAN_CODE_P         0x19  // 'p'
#define SCAN_CODE_Q         0x10  // 'q'
#define SCAN_CODE_R         0x13  // 'r'
#define SCAN_CODE_S         0x1F  // 's'
#define SCAN_CODE_T         0x14  // 't'
#define SCAN_CODE_U         0x16  // 'u'
#define SCAN_CODE_V         0x2F  // 'v'
#define SCAN_CODE_W         0x11  // 'w'
#define SCAN_CODE_X         0x2D  // 'x'
#define SCAN_CODE_Y         0x15  // 'y'
#define SCAN_CODE_Z         0x2C  // 'z'
#define SCAN_CODE_left_shift   0x2A
#define SCAN_CODE_2   0x3
#define BREAK_CODE_left_shift   0xAA
// 注意：数字键、功能键、控制键等的扫描码与这些不同，并且通常包括“扩展键”（E0或E1前缀）
// 的概念，用于区分两组不同的扫描码集。

// 例如，数字键'1'的扫描码可能是0x02（没有Num Lock）或E0 1E（有Num Lock作为方向键的一部分）
// 这里没有列出这些复杂性，因为它们会使列表变得非常庞大和难以管理。

// 如果需要完整的键盘扫描码表，建议查阅相关的硬件文档或操作系统源代码中的键盘驱动程序部分。
#endif //MAKECODEDFINE_H
